package com.glsc.ngateway.platform;

import com.github.xiaoymin.knife4j.spring.annotations.EnableKnife4j;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.autoconfigure.domain.EntityScan;
import org.springframework.cloud.openfeign.EnableFeignClients;
import org.springframework.context.annotation.ComponentScan;
import springfox.documentation.swagger2.annotations.EnableSwagger2;

@EntityScan(basePackages = {"com.glsc.ngateway.common.base.domain", "com.glsc.ngateway.common.oc.domain","com.glsc.ngateway.platform.domain"})
@ComponentScan(basePackages = {
        "com.glsc.ngateway.platform", "com.glsc.ngateway.common.base", "com.glsc.ngateway.common.oc",
        "com.glsc.ngateway.platform.repo","com.glsc.ngateway.platform.domain",
        "com.glsc.ngateway.common.api.common",
        "com.glsc.ngateway.common.api.shortmsg", "com.glsc.ngateway.common.api.ldap", "com.glsc.ngateway.common.api.oaflow",
        "com.glsc.ngateway.common.api.flowable", "com.glsc.ngateway.common.api.platform"
})
@EnableFeignClients(
        basePackages = {"com.glsc.ngateway.platform.service.feign"},
        basePackageClasses = {
                com.glsc.ngateway.common.api.oaflow.feign.IFeignOaFlowService.class,
                com.glsc.ngateway.common.api.shortmsg.feign.IFeignShortmsgService.class,
                com.glsc.ngateway.common.api.ldap.feign.IFeignLdapService.class,
                com.glsc.ngateway.common.api.flowable.feign.IFeignFlowableService.class,
                com.glsc.ngateway.common.api.amdoc.feign.IFeignAmdocService.class
        })
@SpringBootApplication
@EnableSwagger2
@EnableKnife4j
public class PlatformApplication {
    public static void main(String[] args) {
        SpringApplication.run(PlatformApplication.class, args);
    }
}
